Platform Explorer / Nuxeo Platform 5.8

Component org.nuxeo.ecm.collaboration.urlservice

Contributions

XML Source

<component name="org.nuxeo.ecm.collaboration.urlservice">

  <extension
    target="org.nuxeo.ecm.platform.url.service.DocumentViewCodecService"
    point="codecs">

    <documentation>
      Codec 'docpathcollaboration' used for collaboration tab.
      Urls are of the form http://site/nuxeo/collaboration/path/to/doc@view?extraargs

      Codec 'doccollaboration' used for document url switching between Collaboration
      or Document Management viewaccording to the context.
      Urls are of the form:
      - http://site/nuxeo/collaboration/path/to/doc@view?extraargs
      - http://site/nuxeo/collaboration/docid@view?extraargs
    </documentation>

    <documentViewCodec name="docpathcollaboration" enabled="true" default="false"
      prefix="nxcollab"
      class="org.nuxeo.ecm.platform.url.codec.DocumentPathCodec" />

    <documentViewCodec name="doccollaboration" enabled="true" default="false"
      prefix="collaboration"
      class="org.nuxeo.ecm.social.workspace.CollaborationCodec" />

  </extension>

  <extension target="org.nuxeo.ecm.platform.ui.web.rest.URLService"
    point="urlpatterns">

    <urlPattern name="collab" enabled="true">
      <defaultURLPolicy>false</defaultURLPolicy>
      <needBaseURL>true</needBaseURL>
      <needRedirectFilter>true</needRedirectFilter>
      <needFilterPreprocessing>true</needFilterPreprocessing>
      <codecName>docpathcollaboration</codecName>
      <actionBinding>#{restHelper.initContextFromRestRequest}</actionBinding>
      <documentViewBindingApplies>
        #{mainTabsActions.isOnMainTab('collaboration')}
      </documentViewBindingApplies>
      <documentViewBinding>#{restHelper.documentView}</documentViewBinding>
      <newDocumentViewBinding>
        #{restHelper.getNewDocumentView(null)}
      </newDocumentViewBinding>
      <bindings>
        <binding name="tabId" callGetter="false">
          #{webActions.currentTabId}
        </binding>
        <binding name="subTabId" callGetter="false">
          #{webActions.currentSubTabId}
        </binding>
        <binding name="tabIds">#{socialWorkspaceActions.collaborationMainTab}</binding>
        <binding name="language" callGetter="false">
          #{restHelper.localeString}
        </binding>
      </bindings>
    </urlPattern>

    <urlPattern name="collaboration" enabled="true">
      <defaultURLPolicy>false</defaultURLPolicy>
      <needBaseURL>true</needBaseURL>
      <needRedirectFilter>true</needRedirectFilter>
      <needFilterPreprocessing>true</needFilterPreprocessing>
      <codecName>doccollaboration</codecName>
      <actionBinding>#{restHelper.initContextFromRestRequest}</actionBinding>
      <documentViewBindingApplies>
        #{mainTabsActions.isOnMainTab('collaboration')}
      </documentViewBindingApplies>
      <documentViewBinding>#{restHelper.documentView}</documentViewBinding>
      <newDocumentViewBinding>
        #{restHelper.getNewDocumentView(null)}
      </newDocumentViewBinding>
      <bindings>
        <binding name="tabId" callGetter="false">
          #{webActions.currentTabId}
        </binding>
        <binding name="subTabId" callGetter="false">
          #{webActions.currentSubTabId}
        </binding>
        <binding name="tabIds">#{socialWorkspaceActions.collaborationMainTab}</binding>
        <binding name="language" callGetter="false">
          #{restHelper.localeString}
        </binding>
      </bindings>
    </urlPattern>

  </extension>

</component>